from django.contrib.auth.models import AbstractUser
from django.db import models


# Create your models here.
class ProjUser(AbstractUser):
    is_admin = models.BooleanField('管理员权限位', default=False)
    pass


class ProjUserGroup(models.Model):
    # 必填，用户组的创建者
    creator = models.ForeignKey(ProjUser, verbose_name='创建者', on_delete=models.SET_NULL, null=True)
    # 必填，用户组的名称
    name = models.CharField('小组名称', max_length=30, null=False, blank=False)
    # 必填，用户组的描述
    description = models.TextField('小组介绍', null=True, blank=True)
    # 选填，用户组成员
    members = models.ManyToManyField(ProjUser, related_name='group_list', verbose_name='小组成员', blank=True)
    # 用户组创建时间，在管理员用post请求创建用户组时自动生成
    create_time = models.DateTimeField('创建时间', blank=True)

    class Meta:
        verbose_name = '用户组'
        verbose_name_plural = '用户组'
